Preparing to upgrade

Upgrading iMIS is much like installing from scratch, with the addition of important pre-upgrade tasks. If you do not complete all pre-upgrade tasks, you risk a failed upgrade, duplicate activities, or damaged user records that you must redefine manually; therefore, follow all processes carefully.

Tip: For best results with earlier versions of iMIS, complete the upgrade to 15.1.3 before proceeding.

Upgrade impacts

In addition to these cautions, review the New Features to evaluate the impact on your existing implementation.

Caution! The installer now removes any existing files for unsupported products, which includes e-CM, e-CM 5.1 publishing service, e-Series, and iBO for COM.

■    As of 15.2.10, all Actions and Constraints are removed from BOD, to support optimal performance and scalability. If you added any actions or constraints to your own business objects, be aware that they will no longer run when your business object is used.

To prepare for an upgrade

1.  If you added any navigation items to the iMIS Desktop view that use the Open the link in a new window option, disable that option (or delete the items) and make a note to restore them after upgrading. Otherwise, the site administrator will need to remove the navigation item and recreate it.

2.  To prevent an upgrade error, ensure that all custom iParts contain a description by running this script and manually updating any rows returned with a description:

SELECT *

FROM [dbo].[WebPartGalleryEntryRef]

WHERE ([WebUserControlPath] IS NOT NULL OR [WebPartTypeName] IS NOT NULL)

       AND ([WebPartDescription] IS NULL OR [WebPartDescription] = '')

ORDER BY [WebPartName]

3.  To prevent "duplicate key" upgrade errors resulting from bad registration records, run two scripts:

□    No ShipTo ID - A registration record without an ST_ID occurs when entering new contact records through the Events registration Attendee tab in iMIS Desktop without enabling Add to Master. To find such problems, run the selection part of the script (Step 0); if you receive any results, run the entire script (Steps 1-3):

ftp://ftp.advsol.com/download/Restricted/UpdateMeetingOrdersWithNoSTID.sql

Although this lets you upgrade your database successfully, it does not prevent future problems. To avoid recreating the problem, always enable Add to Master when entering new contact records through the Events registration Attendee tab.

□    Duplicate registration - The error also occurs if your database contains duplicate event registration records for the same event. Run the selection script to locate these records:

ftp://ftp.advsol.com/download/Restricted/SelectDuplicateRegistrations.sql

Often the best fix is to close the event, which creates activity records for each registrant and purges all related entries in Orders, Order_Lines, Order_Meet, and Order_Badge.

4.  If upgrading on Windows Server 2003, apply the hot fix KB925336, or else the upgrade will fail.

5.  If you use SQL Server’s Database Engine Tuning Advisor to create additional index statistics, note that these are deleted during upgrade and will have to be re-added, if needed. See Database Engine Tuning Advisor index statistics.

6.  In iMIS, post any open A/R Cash batches by hand. (If you do not, the upgrade might duplicate DUES activities.)

7.  If you customized any standard business objects, examine their properties in Business Object Designer (BOD) and record your changes so that you can reproduce them after upgrading.

Note: New business objects that you created with BOD are automatically upgraded, but standard ones are overwritten.

8.  Itemize any other customizations and locate their upgrade instructions.

9.  (SQL Server 2000) Upgrade to a supported version of SQL Server, relocate your iMIS database to the new service, and upgrade using the relocated database.

Note: Be sure to uninstall iMIS from your application server, install the new version of iMIS, and upgrade workstations with the remote installer from that application server.

10. In your SQL Server management environment, do these checks:

□    Check for database corruption by running DBCC CHECKDB.

□    Set the database option Auto Close to False.

□    (if applicable) Enable the database option to Truncate Log on Checkpoint. Be sure your DB log has sufficient size/space to grow to twice the size of the largest table. Revert to your original log settings only after you have upgraded successfully.

□    Set the Recovery Model to Simple before running the iMIS upgrade. Record what you changed it from, and change back the setting only after you have successfully upgraded.

□    Itemize, and then drop, all full-text indexes and catalogs (but avoid dropping other types of indexes before upgrading, because some upgrade procedures need them). After the upgrade, you can recreate them.

Note: Failure to perform this step might cause the upgrade to fail.

□    If you have customized any ASI triggers, record your customizations so that you can reapply them after upgrading. All ASI triggers, procedures, views, and functions are replaced during upgrades, so be sure that you are customizing the new SQL rather than overwriting with old code, which could break iMIS functionality.

□    Verify that all custom triggers and stored procedures in your iMIS database use only ANSI-standard join clauses (see Upgrade error for non-ANSI join operators).

□    If you have custom views, refresh their metadata (see " Refreshing metadata for custom views).

11. Back up your database.

12. Large databases: Check that you have ample free disk space relative to the size of your database, as its tables are copied during the process of conversion and rebuilding for ANSI support.

Tip: You can run a pre-upgrade conversion on a backup to ensure that all non-ANSI-compliant tables can be rebuilt successfully. See Running a standalone ANSI conversion in Database Utilities.

13. Verify that the backup can be restored.

Tip: If the upgrade process fails for any reason, you fix can whatever caused the failure, restart the upgrade, and it will pick up where it left off.

14. Schedule system downtime for the upgrade to occur.

Note: To enable default ANSI settings, the upgrade utility rebuilds every non-compliant table and recreates all stored procedures, triggers, functions, and views. Because of this extensive rebuilding, expect upgrading to be significantly slower for very large databases.